package com.ruoyi.merchant.service;

import com.ruoyi.merchant.domain.dto.AddBankCardDTO;
import com.ruoyi.merchant.domain.vo.BankCardDetailVO;
import com.ruoyi.merchant.domain.vo.BankCardVO;

import java.util.List;

/**
 * 商家银行卡Service接口
 */
public interface IMerchantBankCardService {
    
    /**
     * 添加银行卡
     *
     * @param addDTO 银行卡信息
     * @return 银行卡ID
     */
    Long addBankCard(AddBankCardDTO addDTO);
    
    /**
     * 查询银行卡列表
     *
     * @return 银行卡列表
     */
    List<BankCardVO> getBankCardList();
    
    /**
     * 查询银行卡详情
     *
     * @param cardId 银行卡ID
     * @return 银行卡详情
     */
    BankCardDetailVO getBankCardDetail(Long cardId);
    
    /**
     * 设置默认银行卡
     *
     * @param cardId 银行卡ID
     * @return 结果
     */
    int setDefaultBankCard(Long cardId);
    
    /**
     * 删除银行卡
     *
     * @param cardId 银行卡ID
     * @return 结果
     */
    int deleteBankCard(Long cardId);
    
    /**
     * 验证银行卡
     *
     * @param cardId 银行卡ID
     * @return 结果
     */
    int verifyBankCard(Long cardId);
}
